package main

import (
	"fmt"
	"io/ioutil"
	"os"
	"strings"
)

func main() {
	// 读文件数据
	//FileName := "/tmp/file.txt"
	//data, _ := ioutil.ReadFile(FileName) // 此处读出为byte，所以下方进行类型转换
	//fmt.Println(string(data))
	//
	//// 写文件数据
	//FileName2 := "/tmp/hello.txt"
	//str := "hello world"
	//err := ioutil.WriteFile(FileName2, []byte(str), 0755)
	//
	//if err != nil {
	//	// 处理错误
	//	fmt.Println("Error writing to file:", err)
	//	return // 如果发生错误，可以选择返回或者采取其他适当的错误处理措施
	//} else {
	//	fmt.Println("all good")
	//}

	//	读取 reader 类型的数据，常用于 http response 的读取
	s2 := "contents of all"
	r1 := strings.NewReader(s2)
	text, err := ioutil.ReadAll(r1)
	if err != nil {
		fmt.Println("somethinf wrong here: ", err)
	} else {
		fmt.Println(string(text))
	}

	//	遍历当前路径的下层文件，显示一个层级
	dir, _ := os.Getwd()
	infos, _ := ioutil.ReadDir(dir)
	for _, val := range infos {
		fmt.Println(val.Name())
	}
}
